package com.tools.ad.manager;

import android.view.View;

import com.hm.base.android.mob.AMApplication;
import com.tools.ad.ADModule;
import com.tools.ad.EntranceType;
import com.tools.ad.adscene.AdStrategyScene;

/**
 * desc:
 * date: 2018/4/18
 * author: ancun
 */

public class AdSceneManager {

    private AMApplication imContext;
    private ADModule mAdModule;

    public AdSceneManager(AMApplication context, ADModule adModule) {
        imContext = context;
        mAdModule = adModule;
    }

    /**
     * 加载广告
     * 不强制加载，遵循策略判断
     * @param entranceType
     * @return
     */
    public boolean load(EntranceType entranceType) {
        return load(entranceType, false);
    }

    /**
     * 加载广告
     * 可选是否强制加载，跳过遵循策略判断
     * @param entranceType
     * @return
     */
    public boolean load(EntranceType entranceType, boolean forceLoad) {
        return entranceType.getAdScene().load(forceLoad);
    }

    /**
     * 获取 EntranceType 对应的场景
     * @param entranceType
     * @return
     */
    public AdStrategyScene getAdScene(EntranceType entranceType) {
        return (AdStrategyScene) entranceType.getAdScene();
    }

    /**
     * 获取 EntranceType 加载的广告view
     * @param entranceType
     * @return
     */
    public View getAdView(EntranceType entranceType) {
        return entranceType.getAdScene().getAdView();
    }

    /**
     * 释放 EntranceType 对应的场景
     * @param entranceType
     * @return
     */
    public void release(EntranceType entranceType) {
        entranceType.getAdScene().release();
    }
}
